NAND flash memory, as well as other types of non-volatile memories (“NVMs”), are commonly used for mass storage. For example, consumer electronics such as portable media players often include flash memory to store music, videos, and other media.
A device having an NVM can sometimes store an indirection system in volatile memory. The indirection system can be a data structure that maps a logical space to a physical space. In some cases, the indirection system may have a trim (e.g., “unmap”) functionality allowing one or more entries of the indirection system to be unmapped when corresponding data is unmapped. Unfortunately, if the amount of memory that has been allocated for the indirection system prevents the indirection system from expressing a worst case physical fragmentation of the logical space, the device may not boot properly after an ill-timed reset.